package com.example.e_comm.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@TableName("vehicle")
public class Vehicle {
    @TableId(type = IdType.AUTO)
    private Long id;          // 主键（自增）
    @NotBlank(message = "车辆VIN码不能为空")
    private String vin;       // 车辆VIN码
    private BigDecimal longitude; // 位置经度
    private BigDecimal latitude;  // 位置纬度
    private Integer speed;        // 当前车速(km/h)
    private Integer totalMileage; // 总里程(km)
    private BigDecimal batteryLevel; // 剩余电量百分比
    private Integer status;         // 车辆状态：1-离线；2-行驶中；3-充电中
    private LocalDateTime lastReportTime; // 最后上报时间（自动填充）
    private LocalDateTime updateTime;     // 更新时间（自动填充）
    private String version;       // 版本号
    private Integer deleted;      // 逻辑删除（0-未删除，1-已删除）
}
